// 邮箱发送验证码
const nodemailer = require("nodemailer");
function generateRandomSixDigitNumber() {
  return Math.floor(Math.random() * (1000000 - 10000 + 1)) + 10000;
}

const sendCodeMail = (emitName) => {
  //配置信息
  const transporter = nodemailer.createTransport({
    service: 'qq',  //  邮箱
    secure: true,    //  安全的发送模式
    auth: {
      user: '2113282197@qq.com', //  发件人邮箱（第一步的邮箱）
      pass: 'ttvcoidudirsebcf' //  授权码 （第一步获取到的授权码）
    }
  });
  let r =generateRandomSixDigitNumber()
   // 发送邮件的配置
 let mailOptions = {
  from: 'JavaScript之光 <2113282197@qq.com>', //前面可以写发件人名字后面的邮箱配置为上方的邮箱地址
  subject: 'NODEJS验证码', //邮件标题
  to: `${emitName}`, //配置目标邮箱,可以从前端传来的数据中获取
  text: `您的验证码是：${r} , 有效期五分钟 , 如非本人操作 , 请忽略`, //邮件内容一般是发送验证码
  // html:  `<div>您的验证码是</div><b>${generateRandomSixDigitNumber()}</b>` // html格式
}
// 使用正则表达式匹配验证码
const regex = /\d{6}/; // 匹配连续的六位数字


  // 发送邮件到指定邮箱
  transporter.sendMail(mailOptions, (err, data) => {
    if (err) {
      console.log(err);
    }
    // else {
    //   console.log(data, 'data...',);

    // }
  })
  return mailOptions.text.match(regex)[0]
}

module.exports = { sendCodeMail };
